﻿using System;
using System.Collections.Generic;
using System.Data.Entity.Core.Objects;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using PharmacyBussinesEntities;

namespace PharmacyRepositoy
{
    public class DetalleVentaRepository : MasterRepository, IDetalleVentaRepository
    {
        public List<DetalleVenta> GetAllFromDetalleVentaByVentaId(int id)
        {
            var query = from p in Context.DetalleVentas
                .Include("Lote")
                select p;
            ObjectContext.Refresh(RefreshMode.StoreWins, query);
            return query.ToList();
        }

        public void DeleteDetalleVenta(int idProducto, int idVenta)
        {
            var existe = Context.DetalleVentas
                .Where(p => p.Item.Equals(idProducto) && p.IdVenta.Equals(idVenta)).SingleOrDefault();
            if (existe != null)
            {
                Context.DetalleVentas.Remove(existe);
                Context.SaveChanges();
            }
        }

        public DetalleVenta GetFromProductoByDetalleVentaId(int idProducto, int idVenta)
        {
            var query = from c in Context.DetalleVentas
                        where c.IdLote.Equals(idProducto) && c.IdVenta.Equals(idVenta)
                        select c;

            ObjectContext.Refresh(RefreshMode.StoreWins, query);
            return query.SingleOrDefault();
        }
    }
}
